/**
 *******************************************************************************
 * @FileName  : board.h
 * @Author    : GaoQiu
 * @CreateDate: 2023-08-01
 * @Copyright : Copyright(C) Panchip
 *              All Rights Reserved.
 *******************************************************************************
 *
 * The information contained herein is confidential and proprietary property of
 * Panchip and is available under the terms of Commercial License Agreement
 * between Panchip and the licensee in separate contract or the terms described
 * here-in.
 *
 * This heading MUST NOT be removed from this file.
 *
 * Licensees are granted free, non-transferable use of the information in this
 * file under Mutual Non-Disclosure Agreement. NO WARRENTY of ANY KIND is provided.
 *
 *******************************************************************************
 */
#ifndef BOARD_H_
#define BOARD_H_

#include "app_config.h"

#if defined(PAN10x_DK) //kit
	/*! LED Pin define. */
	#define LED_PIN_RED        GPIO_P10
	#define LED_PIN_GREEN      GPIO_P11
	#define LED_PIN_BLUE       GPIO_P16
	#define LED_PIN_YELLOW
	#define LED_PIN_WHITE

	/*! LED valid level. */
	#define LED_VALID_LEVEL    1  /*!< 1: high valid; 0: low valid. */

	/*! Button */
	#define BTN_PINS           {GPIO_P04, GPIO_P05, GPIO_P56}
	#define BTN_MAPS           {BTN_2, BTN_3, BTN_1}

#elif defined(PAN10x_DK_32)
	/*! LED Pin define. */
	#define LED_PIN_RED        GPIO_P10
	#define LED_PIN_GREEN      GPIO_P11
	#define LED_PIN_BLUE       GPIO_P16
	#define LED_PIN_YELLOW
	#define LED_PIN_WHITE

	/*! LED valid level. */
	#define LED_VALID_LEVEL    1  /*!< 1: high valid; 0: low valid. */

	/*! Button */
	#define BTN_PINS           {GPIO_P04, GPIO_P05, GPIO_P56}
	#define BTN_MAPS           {BTN_1, BTN_2, BTN_3}

#elif defined(PAN10x_DG)//dongle
	/*! LED Pin define. */
	#define LED_PIN_RED        GPIO_P04
	#define LED_PIN_GREEN      GPIO_P05
	#define LED_PIN_BLUE       GPIO_P56

	#define LED_PIN_RED2       GPIO_P21
	#define LED_PIN_BLUE2      GPIO_P20

	/*! LED valid level. */
	#define LED_VALID_LEVEL    1  /*!< 1: high valid; 0: low valid. */

	/*! Button */
	#define BTN_PINS           {GPIO_P11, GPIO_P10}
	#define BTN_MAPS           {BTN_1, BTN_2}

#elif defined(PAN107x_DK)//kit
	/*! LED Pin define. */
	#define LED_PIN_RED        GPIO_P14
	#define LED_PIN_GREEN      GPIO_P14
	#define LED_PIN_BLUE       GPIO_P14
	#define LED_PIN_YELLOW
	#define LED_PIN_WHITE

	/*! LED valid level. */
	#define LED_VALID_LEVEL    1  /*!< 1: high valid; 0: low valid. */

	/*! Button */
	#define BTN_PINS           {GPIO_P13, GPIO_P14}
	#define BTN_MAPS           {BTN_1, BTN_2}

#elif defined(PAN107x_DK_32)
	/*! LED Pin define. */
	#define LED_PIN_RED        GPIO_P24
	#define LED_PIN_GREEN      GPIO_P23
	#define LED_PIN_BLUE       GPIO_P22
	#define LED_PIN_YELLOW
	#define LED_PIN_WHITE

	/*! LED valid level. */
	#define LED_VALID_LEVEL    1  /*!< 1: high valid; 0: low valid. */

	/*! Button */
	#define BTN_PINS           {GPIO_P06, GPIO_P12, GPIO_P02}
	#define BTN_MAPS           {BTN_1, BTN_2, BTN_3}
#else
	#error "PAN10x_DK or PAN10x_DG undefine"
#endif

#endif /* BOARD_H_ */
